Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- Code design



  Error handling in GoLang

Error handling is one of the must talked topics for any programming language. The program would be more reliable and stable if errors are handled properly and timely. Each programming language has its own way to handle error, this applies to GoLang as well. This post will discuss more about GoLang's error handling mechanism. Error handling Before talking more about GoLang's error handling, we can see how different programming languages are handling errors. C's error check The most direct way of ...

   GOLANG,ERROR HANDLING,FLUENT INTERFACE     2021-03-06 21:36:08

  NIO vs IO in Java

Java 1.4 provides a new API for handling IO -- NIO. This is a non-blocking and buffer oriented IO API. Below are main differences between the NIO and IO in Java. IO NIO Stream oriented Buffer oriented Blocking IO Non-blocking IO N/A Using selector Stream oriented vs Buffer oriented The main difference is that IO is stream oriented where the data is read byte by byte and the data will not be buffered normally.This means there is no pointer to move forward and backward in the stream. I...

   JAVA,IO,NIO     2016-01-10 01:40:02

  Fix --go_out: protoc-gen-go: plugins are not supported

When generating RPC code using proto file template in GoLang, one may face the issue like below when running the command protoc. Error: exit status 1 Output: --go_out: protoc-gen-go: plugins are not supported; use 'protoc --go-grpc_out=...' to generate gRPC See https://grpc.io/docs/languages/go/quickstart/#regenerate-grpc-code for more information. Normally this issue is caused because the version of protoc-gen-go being used is not correct. One way to fix the issue is to follow the instructions ...

   GOLANG,PROTO BUFFER,PLUGIN     2021-07-09 03:41:11

  A Better Way to Learn How to Program

Learning how to program can be a nightmare. An aspiring coder has to jump through many unpleasant hoops and mysterious error messages just to get "Hello, World!" printed on the screen. Then, she's left wondering, "OK, now what? How do I actually build something?"As game developers seeing someone struggle through this, we should be screaming, “NOOOOO!” The whole thing reeks of bad game design: a lot of work with no reward, unclear failure cases, advanced features pushed on new players...

   Programming pattern,Game design,Derivati     2011-09-19 13:51:17

  WeChat 5.0 is coming soon

WeChat 5.01 now is available on App Store, but on Android, you still need to wait for some more time. If you want to experiment with new features of WeChat 5.0 now and you are using Android, you can request a beta version of WeChat 5.0 through here .Let's check out the new features first. WeChat 5.0 adopts the popular flat design, it focus on game platform. Main features are: You can play games with friends in game center Add bank account to pay with WeChat New bookmark function, you can bookm...

   WeChat 5.0,New fetuares     2013-08-04 22:42:45

  My favorite quotes from "The design and evolution of C++"

"The design and evolution of C++" is a book written by the inventor of C++  Bjarne stroustrup. In this book, Bjarne stroustrup presents the definitive insider's guide to the design and development of the C++ programming language. Without ommitting critical details or getting bogged down in technicalities, Stroustrup presents his unique insights into the decisions that shaped C++. In this book, some statements are very impressive. They are concise but convey much information. Here I summariz...

   C++,statements,type system,compatibility     2012-07-16 10:58:10

  Mastering a New Programming Language: A Professional Guide

Introduction Learning a new programming language can seem daunting, but with the right approach, anyone can become proficient in a new language. Whether you're a beginner or an experienced programmer, mastering a new language can open up new opportunities in your career and enable you to tackle new and exciting programming challenges. In this guide, we'll provide you with a step-by-step process for mastering a new programming language. Step 1: Choose a Language and Set Goals The first step in ma...

   PROGRAMMING,GUIDE,TIPS     2023-04-22 02:52:00

  How I Develop Things and Why

I've always considered myself a bit of a software junkie. Nothing excites me more than a great piece of new software. Some of my best childhood memories are our trips to Grandma's house, where I'd have access to a computer with a dial-up connection that I'd use to obtain freeware and shareware. I'd bring 4 or 5 floppies with me and try to cram all the games, waveform editors, and utilities that I could sneaker-net home. Luckily today, excellent software written with passion oozes out of ...

   Development,Software,Why,How,Experience     2012-01-28 07:01:34

  Basic Mistakes Developers Make When Creating APIs

Today, there are many tools that developers can use to create an API, meaning that some of them can come up with an API within a matter of minutes. However, there is a vast difference between just creating an API and building one that meets all your expectations, is reliable and secure. Some developers create APIs that work well but forget some basic things that, within no time, bring a lot of issues to the API users. In this article, we are going to talk about the basic mistakes that developers...

   API,API DESIGN,RESTFUL API     2020-08-19 07:54:03

  Rust vs Go: how to choose the best programming language for your project?

Rust and Go, these two modern programming languages, with their unique advantages, are becoming hot topics in the developer community. Their competition in performance, security, simplicity, feature set, and concurrency not only influences developers' choices but also foretells future trends in software development. Battle of Performance: Rust's Precision vs. Go's Efficiency Rust, developed by Mozilla Research, has become the preferred choice for performance-sensitive applications due to its zer...

   RUST,GO,GOLANG,COMPARISON     2024-02-10 19:36:44